'''

    字典：{key:value,key:value...}
    长度：键值对的个数
        key一般是字符串类型，Key不能重复
        value:可以是任意类型  基本数据类型  高级类型
    字典没有下标
    字典的操作
        增：添加键值对
'''

user = {"username":"admin","password":"admin123"}

student = {
            "name":"小明",
            "age":18,
            "score":99.8,
            "isHealthy":True,
            "hoppy":["篮球","足球","跑步"],
            "teacher":{"name":"刘老师","age":29},
}
#指定不存在的键值对是新增
user["status"]="启用"
print(user)
#指定存在的是修改
user["password"]="123"
print(user)
#删除
del user["status"]
print(user)
username= user.pop("username")
print(username)
# user.clear()
# print(user)
#通过key获取value
print(user["password"])#如果key不存在会报错
print(user.get("password"))
print(user.get("username"))#不存在返回空值
#获取所有的key构成的列表
keys = student.keys()
print(keys)
#获取所有的value构成的列表
values = student.values()
print(values)
#获取所有键值对构成的列表
items= student.items()
print(items)
#打印字典长度
print(len(student))
#字典本身是不支持遍历的 -> 提供将字典转换为列表的函数-> 遍历列表
#字典遍历，拿到所有key
for k in keys:
    print(k)
# 字典遍历，拿到所有value
for v in values:
    print(v)
#字典遍历，拿到所有key和value
for k,v in items:
    print(k,v)

#统计一串字符串中每一个字符出现的次数HelloWorld
str1 = "HelloWorld"
result = {}
for i in str1:
    result[i] = str1.count(i)
print(result)

#json
#json.dumps 用于将 Python 对象编码成 JSON 字符串
#json.loads 用于解码 JSON 数据。该函数返回 Python 字段的数据类型。